﻿using System;
using Spotted.Data.Args;

namespace Spotted.Data.Repositories
{
    public interface IUserRepository
    {
        /// <summary>
        /// 
        /// </summary>
        /// <param name="emailAddress">Email Address for the user, represents their username</param>
        /// <param name="password">The passsword for the user (hashed)</param>
        /// <param name="firstName">The first name for the user</param>
        /// <param name="lastName">The last name for the user</param>
        void CreateUser(string emailAddress, string password, string firstName, string lastName);

        /// <summary>
        /// Create User completed event
        /// </summary>
        event EventHandler<UserActionCompleteValidEventArgs> CreateUserCompleted;
    }
}
